#ifndef BSON_H
#define BSON_H

#include <stdio.h>
#include "buf.h"
#include "lexer.h"

int bson_compile_bytes(char const *, int, buf_t *buf, buf_t *out, buf_t *err);
int bson_compile_string(char const *, buf_t *buf, buf_t *out, buf_t *err);
int bson_compile_buffer(char *, size_t, buf_t *buf, buf_t *out, buf_t *err);
int bson_compile_stdin(buf_t *buf, buf_t *out, buf_t *err);
int bson_compile_file(FILE *, buf_t *buf, buf_t *out, buf_t *err);

#endif
